﻿//全局变量
var $plist = "#rplist";             //相关图片列表
var $tempId = "#eboxtemp";          //编辑窗模板
var eboxId = "ebox";                //编辑窗id
var $ebox = "#" + eboxId;           //编辑窗
var $pid = ".pid";                  //图片id
var $psrc = ".psrc";                //图片地址
var $pic = ".pic";                  //相关图片
var $ptit = ".ptit";                //图片标题
var $pod = ".pod";                  //图片序号
var $pdes = ".pdes";                //图片详情
var $aid = "#aid";                  //文章编号


//标题图片上传处理函数
function uptimg() {
    uploadImage("titImgFile", function (url) {
        $("#titImg").attr("src", url);
    });
}

//相关图片上传处理函数
function uprimg() {
    uploadImage("rimgFile", function (url) {
        $("#ebox .psrc").attr("src", url);
    });
}

/*
*功能：上传图片文件
*o ：input["file"]元素的id
*b : 回调函数
*/
function uploadImage(o, b) {
    var fn = $("#" + o).val();
    if (!fn || fn == "") {
        alert("文件为空！");
        return;
    }
    var es = ["jpg", "jpeg", "gif", "png"];
    var sps = fn.split(".");
    //获得文件扩展名
    var fe = sps[sps.length - 1].toString().toLowerCase();
    var fok = false;
    var i;
    //校验文件是否为图片文件
    for (i = 0; i < es.length; i++) {
        if (es[i] == fe) {
            fok = true;
            break;
        }
    }
    if (!fok) {
        alert("文件格式不正确！");
        return;
    }
    $.ajaxFileUpload({
        url: "x/ajax.ashx",
        fileElementId: o,
        data: { id: o, c: AJAXCODE.CheckImage, r: Math.random() },
        dataType: "text",
        success: function (data) {
            if (data == null || data == "") {
                alert("返回的数据有误！");
                return;
            }
            var result = data;
            if (data.substr(0, 1) == "<") {
                result = $(data).html();
            }
            if (result.substr(0, 1) != "{") {
                alert("返回的数据有误！");
                return;
            }
            try {
                var json = eval('(' + result + ')');
                if (json.Success) {
                    if (json.Url != null && json.Url != "") {
                        if (b) {
                            b(json.Url);
                        }
                    }
                }
                else {
                    alert(json.Message);
                }
            }
            catch (e) {
                alert(e.message);
            }
        },
        error: function (data, status, e)//服务器响应失败处理函数
        {
            alert(e);
        }
    });
}

//绑定导航栏切换事件
function navbind() {
    $("#fnav li").click(function () {
        var rid; //关联id
        if ($(this).hasClass("cur")) {
            return;
        }
        var curItem = $(this);
        $("#fnav li").each(function () {
            if ($(this).index() != curItem.index()) {
                $(this).removeClass("cur");

                rid = $(this).attr("rid");
                if (rid && rid != "") {
                    $("#" + rid).css("display", "none");
                }
            }
        });
        $(this).addClass("cur");
        rid = $(this).attr("rid");
        if (rid && rid != "") {
            $("#" + rid).css("display", "block");
            //判断是否开放"添加相关图片"按钮
            if (rid == "rdesc") {
                var aid = $("#aid").val() ? $("#aid").val() : "";       //文章编码
                if (aid == "") {
                    alert("建立文章基础信息后方可添加相关图片！");
                    return;
                }
                else {
                    $("#newpic").css("display", "block");
                }
            }
            else {
                $("#newpic").css("display", "none");
            }
        }
    });
}

//打开相关图片编辑窗口
function openEditor(e) {
    //如果有编辑窗打开，先关闭编辑窗
    if ($($ebox)) {
        $($ebox).remove();
    }

    var html = '<li class="ebox" id="' + eboxId + '">' + $($tempId).html() + '</li>';
    if (e) {
        var p = $(e).parents("li.item");
        //插入编辑框
        p.after(html);
        //填充数据
        var item = $($plist).children($ebox);
        var pid = p.find($pid).val() ? p.find($pid).val() : "";
        if (pid == "") {
            alert("图片编码为空！");
            return;
        }
        item.find($pid).val(pid);
        item.find($psrc).attr("src", p.find($pic).attr("src") ? p.find($pic).attr("src") : "");
        item.find($ptit).val(p.find($ptit).text());
        setsv(item.find($pod), p.find($pod).text());
        item.find($pdes).val(p.find($pdes).text());
        item.find(".pfile").attr({ id: "rimgFile", name: "rimgFile" });
    }
    else {
        $($plist).append(html);
        var item = $($plist).children($ebox);
        item.find(".pfile").attr({ id: "rimgFile", name: "rimgFile" });
    }
}

//保存相关图片
function saveimg() {
    var aid = $($aid).val() ? $($aid).val() : "";       //文章编码

    //判断文章编号是否为空
    if (aid == "") {
        alert("文章编码为空，请先建立文章基础信息后再添加相关图片！");
        return;
    }

    var pid = $($ebox).find($pid).val() ? $($ebox).find($pid).val() : "";
    var psrc = $($ebox).find($psrc).attr("src") ? $($ebox).find($psrc).attr("src") : "";
    var pod = getsv($($ebox).find($pod));
    var ptit = $($ebox).find($ptit).val() ? $($ebox).find($ptit).val() : "";
    var pdes = $($ebox).find($pdes).val() ? $($ebox).find($pdes).val() : "";
    fx({ aid: aid, pid: pid, psrc: psrc, ptit: ptit, pod: pod, pdes: pdes, c: AJAXCODE.SaveImage, r: Math.random() }, function (data) {
        if (data.Success) {

            if (pid == "") {
                var html = '<li class="item"><div class="cn"><input type="hidden" class="pid" value="' + data.O.PID.toString() + '" /><img class="pic" src="' + data.O.Src.toString() + '" title="' + data.O.Title.toString() + '" alt="' + data.O.Title.toString() + '" /><div class="tit clearfix"><span class="ptit">' + data.O.Title.toString() + '</span><span class="od">（<b class="pod">' + data.O.Ordinal.toString() + '</b>）</span><div class="o"><input class="btn edit" type="button" value="&#xf040;" onclick="openEditor(this);"/><input class="btn del" type="button" value="&#xf00d;" onclick="delp(this);"/></div></div><div class="pdes"  onclick="delp(this);">' + data.O.Desc.toString() + '</div></div></li>';
                $($plist).append(html);
            }
            else {
                var item = $($ebox).prev();
                item.find($pid).val(data.O.PID.toString());
                item.find($pic).attr({ "src": data.O.Src.toString(), "title": data.O.Title.toString(), "alt": data.O.Title.toString() });
                item.find($pod).text(data.O.Ordinal.toString());
                item.find($ptit).text(data.O.Title.toString());
                item.find($pdes).text(data.O.Desc.toString());
            }
            $($ebox).remove();
        }
    })

}

//关闭图片编辑窗口
function closeEditor() {
    if ($($ebox)) {
        $($ebox).remove();
    }
}

//删除相关图片
function delp(e) {
    var aid = $($aid).val() ? $($aid).val() : "";       //文章编码
    var item = $(e).parents(".item");
    var pid = item.find($pid).val() ? item.find($pid).val() : "";     //图片编码
    var ptit = item.find($ptit).text() ? item.find($ptit).text() : "";
    if (!confirm('确定要删除图片："' + ptit + '"?')) {
        return;
    }
    if (aid == "" || pid == "") {
        return;
    }
    fx({ aid: aid, pid: pid, c: AJAXCODE.DeleteImage, r: Math.random() }, function (data) {
        if (data.Success) {
            item.remove();
            //判断是否需要移除编辑窗
            if ($($ebox) && $($ebox).find($pid).val() == pid) {
                $($ebox).remove();
            }
        }
    });
}


//保存/添加文章
function save() {
    var aid = $("#aid").val() ? $("#aid").val() : "";       //文章编码
    var atit = $("#atitle").val() ? $("#atitle").val() : "";    //文章标题
    var tsub = $("#titSub").val() ? $("#titSub").val() : "";    //文章副标题
    var cid = getsv("#cid");                                            //文章栏目id
    var ordinal = getsv("#ordinal");  //文章序号
    var author = $("#author").val() ? $("#author").val() : "";      //作者
    var source = $("#source").val() ? $("#source").val() : "";      //来源
    var ctime = $("#ctime").val() ? $("#ctime").val() : "";         //创作时间
    var rdurl = $("rdurl").val() ? $("#rdurl").val() : "";          //链接
    var timg = $("#titImg").attr("src") ? $("#titImg").attr("src") : "";    //标题图片
    var key = $("#key").val() ? $("#key").val() : "";               //关键字
    var desc = $("#desc").val() ? $("#desc").val() : "";      //描述
    var sumy = $("#summary").val() ? $("#summary").val() : "";              //摘要
    var content = $("#contentx").val() ? $("#contentx").val() : "";           //文章内容
    try {
        fx({ aid: aid, atit: atit, tsub: tsub, cid: cid, ordinal: ordinal, author: author, source: source, ctime: ctime, rdurl: rdurl, timg: timg, key: key, desc: desc, sumy: sumy, content: content, c: AJAXCODE.SaveArticle, r: Math.random() }, "x/ajax.ashx", function (data) {
            if (data.Success) {
                $("#aid").val(data.O.AID.toString());
                $("#titImg").attr("src", data.O.TitleImage.toString());
            }
        });
    }
    catch (er) {
        alert(er.toString());
    }

}

//页面加载
$(function () {
    navbind();
    var cid = $("#cid").attr("cid") ? $("#cid").attr("cid") : "";
    var oid = $("#ordinal").attr("oid") ? $("#ordinal").attr("oid") : "";
    setsv("#cid", cid);
    setsv("#ordinal", oid);
});
